This invention was not developed in conjunction with any Federally sponsored contract.
Not applicable.
The related application, U.S. application Ser. No. 09/435,004, filed on Nov. 5, 1999, by John W. Dunsmoir, et al., is incorporated herein by reference in its entirety, including drawings, and hereby are made a part of this application.
1. Field of the Invention
This invention pertains to the arts of electronic web site technology, and especially to the arts of designing, developing, testing, configuring and commercially exploiting web site pages in HTML which contain multiple-row objects such as tables, check boxes, radio buttons and lists.
2. Description of the Related Art
As described in the related application, the use of the World Wide Web (xe2x80x9cWWWxe2x80x9d) has grown dramatically and is expected to continue to grow as more businesses, government agencies, educational institutions, and private consumers become web users and web site owners. Hyper Text Markup Language (xe2x80x9cHTMLxe2x80x9d) documents are the most common type of document which are found on the Internet and on intranets today. HTML documents have gained widespread acceptance partly because of the simplicity of the HTML language, but primarily because of the open nature of the standardxe2x80x94it is not a proprietary or closed standard. As a result, several commercially available client browser software packages are available which can receive and interpret/display HTML documents, and even more software packages are available to allow quick, pseudo-what-you-see-is-what-you-get (xe2x80x9cWYSIWYGxe2x80x9d) document design. In the former category of software packages are popular personal computer web browser software packages such as Microsoft""s Internet Explorer and Netscape""s Navigator. In the later category of software pages are Microsoft""s FrontPage and Corel""s PageMaker.
As a web browser receives an HTML document, it determines how to display each object, such as a list, table, text paragraph, or graphic image, based on the web browser computer""s hardware capabilities and display preferences. For example, the same web page may be visually displayed somewhat differently on a computer with 21-inch high-resolution monitor than on a computer with a 14-inch low-resolution monitor. In some cases of extremely low capabilities of display hardware and software, such as a palm-top computer equipped with a monochrome liquid crystal display (xe2x80x9cLCDxe2x80x9d), graphics may not be displayed at all.
While a web designer works to define the layout and content of an HTML page, he or she must keep in mind these variations. Even though the web browser software attempts to adapt the display of an HTML page to the system display available, a web designer can significantly enhance the appearance of the web page through careful consideration during the design. This means that each object, including tables, placed in an HTML page must be considered for variations of display.
So, it is often desirable to create the physical xe2x80x9clayoutxe2x80x9d or arrangement of web objects prior to creating the actual information content of the page. In some cases, including situations where dynamic content is expected, definition of the page layout prior to creation of the content may be unavoidably required. For example, a web page which will be using a table to display all stock prices which have changed by more than 5% may require a table with 50 listings one day, and may require a table with 115 listings the next day.
Table 1 shows example HTML code for displaying a table which has 4 rows and 3 columns in each row. As discussed in the related application, the HTML syntax consists of tags which are enclosed in pointed brackets, xe2x80x9c less than xe2x80x9d and xe2x80x9c greater than xe2x80x9d, parameters for those tags, and text. In the example HTML document of Table 1, the opening  less than HTML greater than  tag simply indicates that the rest of the file (until  less than /HTML greater than  is found) is to be interpreted as HTML. The  less than BODY . . .  greater than  tag sets the colors of the display of the document for the background, hyperlinks, and plain text. The definition of the table begins with the  less than TABLE . . .  greater than  tag.
As shown in Table 1, the HTML table tag includes parameters to set the thickness of the border line to 1 pixel, the width of the row to 100% of the display window, and the padding and spacing definition of the cells. The web browser uses these as guidelines when interpreting and displaying the table on the system display.
Each row in the table is started with a  less than TR greater than  tag and concluded with a  less than /TR greater than  tag. Horizontal justification and vertical placement of the text within cells of a row are optionally specified by the ALIGN and VALIGN parameters. Between the  less than TR greater than  and  less than /TR greater than  tags are the definitions of the cells and their contents, using the  less than TD greater than  and  less than /TD greater than  tags to start and end a cell, respectively. The contents to be displayed in the cell is given as plain text located between the  less than TD greater than  and  less than /TD greater than  tags. This syntax is well-known within the art.
FIG. 1 shows a portion of a web browser computer screen (1) on which a web browser software package (2), such as Netscape""s Navigator, is displaying the sample HTML code of Table 1. A standard paragraph (3) is shown preceeding the table (4) of the example code. The table occupies the full width of the window in which the web browser software is running. If the window were re-sized smaller or larger, the web browser would display each row of the table (4) narrower or wider as appropriate.
Web browser software packages, however, only display static, or fixed HTML. So, if a table is to be displayed with 14 rows and three columns, the HTML transmitted to the web browser must include 14 row definitions as 14  less than TR greater than  and  less than /TR greater than  pairs, and 3 cell  less than TD greater than  and  less than /TD greater than  pairs per row.
Other multi-row web objects are similar in nature in HTML to the definition for tables. For example, the HTML for an unordered list is shown in Table 2.
In the example of Table 2, an unordered, un-numbered list is displayed having three items in it. The  less than ul greater than  tag starts the list, and the  less than /ul greater than  tag ends the list, with each element or row in the list being started and ended by  less than li greater than  and  less than /li greater than  , respectively.
Table 3 shows an ordered and numbered list in HTML, which is very similar to unordered lists. The  less than ol greater than  and  less than /ol greater than  tag pair define the beginning and ending of the list, and each list item or list row is defined by a  less than li greater than  and  less than /li greater than  tag pair. In the example of Table 3, each item listed in the list will be preceded by a number or letter based on the item""s position within the list, such as 1,2,3. . . , or A,B,C, . . . or i,ii,iii,iv . . . The web browser generates the numbers for the items based on a default numbering system, or a defined numbering system using a  less than ol type= greater than  tag. This syntax for generating lists is also well-known within the art.
In order for a web server to send HTML pages to various browsers which have tables, lists and other row-oriented web objects of varying length, several prior art technologies exist. The most common technology would be for the web designer to include a client-side script, which is executable code, included in the HTML page itself. When the HTML page is received by the browser computer, the browser software executes the client-side script and generates the necessary HTML lines for the browser to display a table with certain characteristics and content. This however places a burden on the processing of the browser client computer, and it presents compatibility problems as not all browser software packages support all client-side scripting languages.
An alternative method is for the web server to dynamically create the HTML using Common Gateway Interface (xe2x80x9cCGIxe2x80x9d) calls to programs residing and executing on the web server computer to generate the appropriate HTML table code. This may place an unacceptable processing burden on the web server computer, and may also lead to compatibility issues with the CGI program due to the variations in web server hardware platforms and operating systems.
Both of the solutions present another problem in that the web page designer now must have programming expertise in either client-side scripts, CGI scripts, or both. Additionally, it may be difficult to predict the actual appearance of a web page as the table HTML is not actually available during graphic design for the web designer to place on the page and arrange with other web objects.
Therefore, there is a need in the art for a server-side means to allow a web designer to place a sample row-oriented web object on a web page under design, and to allow the sample object to be readily replaced with an actual object while minimizing programming skills necessary but allowing a reasonable predictability of the visual display of the actual table in the HTML page. Further, there is a need in the art for this server-side means to be compatible with virtually any web server platform to enhance its usefulness to the industry. Finally, there is a need in the art for this server-side means to be suitable for real-time use during web server operation so as to enable real-time inclusion of tables in web pages based on dynamic format and content requirements.